package com.ctshk.rpc.train.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 火车票产品加幅策略dto
 * </p>
 *
 * @author 彭柳霖
 * @since 2021-02-09
 */
@Data
@ApiModel(value="TrainProductStrategyDTO对象", description="火车票产品加幅策略dto")
public class TrainProductStrategyDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    @ApiModelProperty(value = "加幅策略名称")
    private String increaseStrategyName;

    @ApiModelProperty(value = "自营权限类型")
    private Integer selfSalePermissionType;

    @ApiModelProperty(value = "代理商权限类型")
    private Integer agentSalePermissionType;

    @ApiModelProperty(value = "火车票产品id")
    private Long trainProductId;

    @ApiModelProperty(value = "自营权限规则id")
    private Long selfSalePermissionId;

    @ApiModelProperty(value = "自营加幅规则")
    private TrainProductIncreaseStrategyRuleDTO trainIncreaseStrategySelfRule;

    @ApiModelProperty(value = "代理商权限规则id")
    private Long agentSalePermissionId;

    @ApiModelProperty(value = "代理加幅规则")
    private TrainProductIncreaseStrategyRuleDTO trainIncreaseStrategyAgentRule;

    @ApiModelProperty(value = "火车票产品加幅策略有效期集合")
    private List<TrainProductStrategyDateDTO> trainProductStrategyDateDTOList;

    @ApiModelProperty(value = "线下代理商自定义用户部门设置集合")
    private List<TrainProductChannelOfflineAgentCustomDTO> trainProductChannelOfflineAgentCustomDTOList;

    @ApiModelProperty(value = "线下自营自定义用户部门集合")
    private List<TrainProductChannelOfflineSelfCustomDTO> trainProductChannelOfflineSelfCustomDTOList;

    @ApiModelProperty(value = "线上渠道自定义权限集合")
    private List<TrainProductChannelOnlineSelfPlatformDTO> trainProductChannelOnlineSelfPlatformDTOList;

    @ApiModelProperty(value = "线上渠道第三方平台集合")
    private List<TrainProductChannelOnlineThirdPlatformDTO> trainProductChannelOnlineThirdPlatformDTOList;

}
